import request from '@/config/axios'
import type { Dayjs } from 'dayjs';

/** ERP 生产计划工序项信息 */
export interface ProduceProcessItems {
    id: number; // 产品编号
    planNo: string; // 生产计划单编号
    planId?: number; // 生产计划单id
    userId?: number; // 加工人员
    process: number; // 工序id
    workBeginTime: string | Dayjs; // 加工开始
    workEndTime: string | Dayjs; // 加工结束
    allTime: number; // 合计用时
    passCount: number; // 合格数量
    scrapCount: number; // 报废数量
    remark: string; // 产品备注
}

// ERP 生产计划工序项 API
export const ProduceProcessItemsApi = {
    // 查询ERP 生产计划工序项分页
    getProduceProcessItemsPage: async (params: any) => {
        return await request.get({ url: `/erp/produce-process-items/page`, params })
    },

    // 查询ERP 生产计划工序项详情
    getProduceProcessItems: async (id: number) => {
        return await request.get({ url: `/erp/produce-process-items/get?id=` + id })
    },

    // 新增ERP 生产计划工序项
    createProduceProcessItems: async (data: ProduceProcessItems) => {
        return await request.post({ url: `/erp/produce-process-items/create`, data })
    },

    // 修改ERP 生产计划工序项
    updateProduceProcessItems: async (data: ProduceProcessItems) => {
        return await request.put({ url: `/erp/produce-process-items/update`, data })
    },

    // 删除ERP 生产计划工序项
    deleteProduceProcessItems: async (id: number) => {
        return await request.delete({ url: `/erp/produce-process-items/delete?id=` + id })
    },

    /** 批量删除ERP 生产计划工序项 */
    deleteProduceProcessItemsList: async (ids: number[]) => {
        return await request.delete({ url: `/erp/produce-process-items/delete-list?ids=${ids.join(',')}` })
    },

    // 导出ERP 生产计划工序项 Excel
    exportProduceProcessItems: async (params) => {
        return await request.download({ url: `/erp/produce-process-items/export-excel`, params })
    }
}
